/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Send-Message-Related-APIs
富媒体短信发送相关接口

OpenAPI spec version: v2
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/


#ifndef RmsApiModel_h
#define RmsApiModel_h
#import <JDCloudOCSDKCore/JDCloudOCSDKCore.h>
#import <JDCloudOCSDKRms/RmsModel.h>


@interface RmsQueryTemplateByIdRequest:JDCloudRequest

/// 短信ID
@property (strong,nonatomic,nonnull)  NSString*  templateId;
-(id) initWithRegion:(NSString *)regionId
templateId:(NSString*)templateId;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSString*)templateId;

@end

@interface RmsQueryTemplateListRequest:JDCloudRequest

/// 应用ID
@property (strong,nonatomic,nonnull)  NSString*  appId;
/// 查询标题关键词
@property (strong,nonatomic,nonnull)  NSString*  title;
/// 第几页
@property (strong,nonatomic,nonnull)  NSNumber*  pageNum;
/// 每页多少条记录
@property (strong,nonatomic,nonnull)  NSNumber*  pageLimit;
/// 审核状态：0: 审核中 1: 通过 2: 未通过 4:待提交
@property (strong,nonatomic,nonnull)  NSString*  status;
/// 开始时间,格式YYYY-MM-DD
@property (strong,nonatomic,nonnull)  NSString*  startTime;
/// 结束时间,格式YYYY-MM-DD
@property (strong,nonatomic,nonnull)  NSString*  endTime;
-(id) initWithRegion:(NSString *)regionId
appId:(NSString*)appId
title:(NSString*)title
pageNum:(NSNumber*)pageNum
pageLimit:(NSNumber*)pageLimit
status:(NSString*)status
startTime:(NSString*)startTime
endTime:(NSString*)endTime;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
appId:(NSString*)appId
title:(NSString*)title
pageNum:(NSNumber*)pageNum
pageLimit:(NSNumber*)pageLimit
status:(NSString*)status
startTime:(NSString*)startTime
endTime:(NSString*)endTime;

@end

@interface RmsSendBatchMsgRequest:JDCloudRequest

/// 应用ID
@property (strong,nonatomic,nonnull)  NSString*  appId;
/// 短信ID
@property (strong,nonatomic,nonnull)  NSString*  templateId;
/// 群发的国内电话号码，群发时一次最多不要超过100个手机号
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  phone;
/// 短信模板变量对应的数据值，Array格式
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  params;
-(id) initWithRegion:(NSString *)regionId
appId:(NSString*)appId
templateId:(NSString*)templateId
phone:(NSArray<NSString*>*)phone
params:(NSArray<NSString*>*)params;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
appId:(NSString*)appId
templateId:(NSString*)templateId
phone:(NSArray<NSString*>*)phone
params:(NSArray<NSString*>*)params;

@end

@interface RmsQuerySendStatusRequest:JDCloudRequest

/// 应用ID
@property (strong,nonatomic,nonnull)  NSString*  appId;
/// 序列号
@property (strong,nonatomic,nonnull)  NSString*  sequenceNumber;
/// 手机号
@property (strong,nonatomic,nonnull)  NSString*  phone;
-(id) initWithRegion:(NSString *)regionId
appId:(NSString*)appId
sequenceNumber:(NSString*)sequenceNumber
phone:(NSString*)phone;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
appId:(NSString*)appId
sequenceNumber:(NSString*)sequenceNumber
phone:(NSString*)phone;

@end

@interface RmsAddTemplateRequest:JDCloudRequest

/// 应用ID
@property (strong,nonatomic,nonnull)  NSString*  appId;
/// 签名类型 0:公司 1:app 2:网站 3:公众号 4:商标 5:政府机关
@property (strong,nonatomic,nonnull)  NSString*  signType;
/// 用途 0:自用 1:他用
@property (strong,nonatomic,nonnull)  NSString*  purpose;
/// 资质证明类型 0:三证合一 1:企业营业执照 2:组织机构代码证书 3:社会信用代码证书
@property (strong,nonatomic,nonnull)  NSString*  signCardType;
/// 资质证明图片必须是jpg图片的base64编码，只支持jpg图片
@property (strong,nonatomic,nonnull)  NSString*  aptitudes;
/// 多媒体内容的标题
@property (strong,nonatomic,nonnull)  NSString*  title;
/// 多媒体内容的描述
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;
/// 是否支持退订 0:不支持退订 1:支持退订
@property (strong,nonatomic,nonnull)  NSString*  unsubscribe;
/// 短信内容
@property (strong,nonatomic,nonnull)  NSArray<TemplateContent*>*  content;
-(id) initWithRegion:(NSString *)regionId
appId:(NSString*)appId
signType:(NSString*)signType
purpose:(NSString*)purpose
signCardType:(NSString*)signCardType
aptitudes:(NSString*)aptitudes
title:(NSString*)title
descriptionValue:(NSString*)descriptionValue
unsubscribe:(NSString*)unsubscribe
content:(NSArray<TemplateContent*>*)content;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
appId:(NSString*)appId
signType:(NSString*)signType
purpose:(NSString*)purpose
signCardType:(NSString*)signCardType
aptitudes:(NSString*)aptitudes
title:(NSString*)title
descriptionValue:(NSString*)descriptionValue
unsubscribe:(NSString*)unsubscribe
content:(NSArray<TemplateContent*>*)content;

@end

@interface RmsQueryTemplateByIdResult : NSObject
/// 响应数据
 @property (strong,nonatomic,nonnull)  RespQueryTemplateListData*  data;
/// 请求状态
 @property (strong,nonatomic,nonnull)  NSNumber*  status;
/// 错误码
 @property (strong,nonatomic,nonnull)  NSString*  code;
/// 错误消息
 @property (strong,nonatomic,nonnull)  NSString*  message;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithData:(RespQueryTemplateListData*) data

    status:(NSNumber*)status

    code:(NSString*)code

    message:(NSString*)message;
@end

@interface RmsQueryTemplateListResult : NSObject
/// Data
 @property (strong,nonatomic,nonnull)  RespTemplatePageResult*  data;
/// 请求状态
 @property (strong,nonatomic,nonnull)  NSNumber*  status;
/// 错误码
 @property (strong,nonatomic,nonnull)  NSString*  code;
/// 错误消息
 @property (strong,nonatomic,nonnull)  NSString*  message;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithData:(RespTemplatePageResult*) data

    status:(NSNumber*)status

    code:(NSString*)code

    message:(NSString*)message;
@end

@interface RmsQueryTemplateListResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property RmsQueryTemplateListResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(RmsQueryTemplateListResult*) result;
@end

@interface RmsAddTemplateResult : NSObject
/// 短信ID
 @property (strong,nonatomic,nonnull)  RespTemplateData*  data;
/// 请求状态
 @property (strong,nonatomic,nonnull)  NSNumber*  status;
/// 错误码
 @property (strong,nonatomic,nonnull)  NSString*  code;
/// 错误消息
 @property (strong,nonatomic,nonnull)  NSString*  message;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithData:(RespTemplateData*) data

    status:(NSNumber*)status

    code:(NSString*)code

    message:(NSString*)message;
@end

@interface RmsAddTemplateResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property RmsAddTemplateResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(RmsAddTemplateResult*) result;
@end

@interface RmsQueryTemplateByIdResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property RmsQueryTemplateByIdResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(RmsQueryTemplateByIdResult*) result;
@end

@interface RmsQueryPackageRemainderResult : NSObject
/// 响应数据
 @property (strong,nonatomic,nonnull)  RespPackageResult*  data;
/// 请求状态
 @property (strong,nonatomic,nonnull)  NSNumber*  status;
/// 错误码
 @property (strong,nonatomic,nonnull)  NSString*  code;
/// 错误消息
 @property (strong,nonatomic,nonnull)  NSString*  message;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithData:(RespPackageResult*) data

    status:(NSNumber*)status

    code:(NSString*)code

    message:(NSString*)message;
@end

@interface RmsQueryPackageRemainderRequest:JDCloudRequest

@end

@interface RmsQueryPackageRemainderResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property RmsQueryPackageRemainderResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(RmsQueryPackageRemainderResult*) result;
@end

@interface RmsQuerySendStatusResult : NSObject
/// Data
 @property (strong,nonatomic,nonnull)  NSArray<QuerySendStatus*>*  data;
/// 请求状态
 @property (strong,nonatomic,nonnull)  NSNumber*  status;
/// 错误码
 @property (strong,nonatomic,nonnull)  NSString*  code;
/// 错误消息
 @property (strong,nonatomic,nonnull)  NSString*  message;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithData:(NSArray<QuerySendStatus*>*) data

    status:(NSNumber*)status

    code:(NSString*)code

    message:(NSString*)message;
@end

@interface RmsQuerySendStatusResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property RmsQuerySendStatusResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(RmsQuerySendStatusResult*) result;
@end

@interface RmsSendBatchMsgResult : NSObject
/// 指定短信Id群发短信响应参数
 @property (strong,nonatomic,nonnull)  SendBatchMsg*  data;
/// 请求状态
 @property (strong,nonatomic,nonnull)  NSNumber*  status;
/// 错误码
 @property (strong,nonatomic,nonnull)  NSString*  code;
/// 错误消息
 @property (strong,nonatomic,nonnull)  NSString*  message;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithData:(SendBatchMsg*) data

    status:(NSNumber*)status

    code:(NSString*)code

    message:(NSString*)message;
@end

@interface RmsSendBatchMsgResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property RmsSendBatchMsgResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(RmsSendBatchMsgResult*) result;
@end

#endif /* RmsApiModel_h */
